<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>:is() test</title>
    <style>
        div {
            border: 1px solid black;
            margin-bottom: 1em;
            padding: 0 0.5em;
        }
        .special :is(h2, p) {
            background-color: lime;
        }
        .forgiving :is(&&&fakhsdaskjhd, h2, p) {
            background-color: lime;
        }
    </style>
</head>
<body>
    <h1>:is() test</h1>
    <div>
        <h2>Nothing</h2>
        <p>These should have no background.</p>
    </div>
    <br/>
    <div class="special">
        <h2>.special :is(h2, p)</h2>
        <p>These should have a green background.</p>
    </div>
    <br/>
    <div class="forgiving">
        <h2>.forgiving :is(&&&fakhsdaskjhd, h2, p)</h2>
        <p>These should have a green background. :is() takes a "permissive selector list",
            so even though part of it is invalid, this does not make the whole selector-list invalid.</p>
    </div>
</body>
</html>
